/**
 * @fn 获取当前设备的安全区域信息
 * @details 包括安全区域的顶部、高度、底部以及菜单按钮的高度。安全区域是指屏幕上不会被状态栏、导航栏或其他系统UI遮挡的区域。
 * @return  返回一个包含安全区域信息的对象。
 * @return  safeTop - 安全区域的顶部距离屏幕顶部的距离（单位：px）。
 * @return  safeHeight - 安全区域的高度（单位：px）。
 * @return  safeBottom - 安全区域的底部距离屏幕底部的距离（单位：px）。
 * @return  menuButtonHeight - 菜单按钮区的高度（单位：px）。
 * @return  contentHeight - 内容区高度 (单位: px)。
 */
export const GetWindowsSafe = () => {
  const systeminfo = uni.getSystemInfoSync()
  const menuButtoninfo = uni.getMenuButtonBoundingClientRect()
  const safeTop: number = systeminfo!.safeArea!.top
  const safeHeight: number = systeminfo!.safeArea!.height
  const safeBottom: number = systeminfo!.screenHeight - safeTop - safeHeight
  const menuButtonHeight: number =
    (menuButtoninfo.top - systeminfo.safeArea!.top) * 2 + menuButtoninfo.height
  const contentHeight: number = systeminfo!.screenHeight - safeTop - menuButtonHeight
  return {
    safeTop,
    safeHeight,
    safeBottom,
    menuButtonHeight,
    contentHeight,
  }
}
